package persistence;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import model.MesPublicacao;

public class MesPublicacaoDaoImpl implements MesPublicacaoDao {
	Connection c;

	public MesPublicacaoDaoImpl() {
		GenericDao gDao = new GenericDao();
		c = gDao.getConnection();
	}

	@Override
	public void salvaMesPublicacao(MesPublicacao mesPublicacao)
			throws SQLException {
		String sql = "INSERT INTO mesPublicacao VALUES (?,?)";
		PreparedStatement ps = c.prepareStatement(sql);

		ps.setInt(1, mesPublicacao.getIdMesPublicacao());
		ps.setInt(2, mesPublicacao.getMes());

		ps.execute();
		ps.close();

	}

	@Override
	public void editaMesPublicacao(MesPublicacao mesPublicacao)
			throws SQLException {
		String sql = "UPDATE mesPublicacao SET mes = ? WHERE idMesPublicacao = ?";
		PreparedStatement ps = c.prepareStatement(sql);
		ps.setInt(1, mesPublicacao.getMes());
		ps.setInt(2, mesPublicacao.getIdMesPublicacao());
		ps.execute();
		ps.close();

	}

	@Override
	public void excluiMesPublicacao(MesPublicacao mesPublicacao)
			throws SQLException {
		String sql = "DELETE mesPublicacao WHERE idMesPublicacao = ?";
		PreparedStatement ps = c.prepareStatement(sql);
		ps.setInt(1, mesPublicacao.getIdMesPublicacao());
		ps.execute();
		ps.close();

	}

	@Override
	public MesPublicacao pesquisaMesPublicacao(MesPublicacao mesPublicacao)
			throws SQLException {
		MesPublicacao mp = new MesPublicacao();
		String sql = "SELECT idMesPublicacao, mes FROM mesPublicacao WHERE idMesPublicacao = ?";
		PreparedStatement ps = c.prepareStatement(sql);
		ps.setInt(1, mesPublicacao.getIdMesPublicacao());
		ResultSet rs = ps.executeQuery();
		if (rs.next()) {
			mp.setIdMesPublicacao(rs.getInt("idMesPublicacao"));
			mp.setMes(rs.getInt("mes"));

		}
		ps.close();
		rs.close();
		return mp;
	}
}
